package com.tool.views;

import java.io.Serializable;
import java.util.List;

import org.apache.commons.lang3.StringUtils;

import com.google.common.base.CaseFormat;

public class TableInfo implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	private String description;

	private String tableName;

	/** 别名 */
	private String alias;

	/** 别名驼峰 */
	private String aliasHump;

	private String mapper;

	private String modular;

	/** 表名驼峰 */
	private String tableNameHump;

	private String servicePackage;

	private String actionPackage;

	private String daoPackage;

	private String toolsPackage;

	private String queryPackage;

	private String queryModel;

	private List<Column> columns;

	private List<Column> forms;

	private List<Column> searchs;

	private List<Column> tables;

	private String rootRouter;

	private String permPrefix;

	private String menuName;

	private List<String> tpls;

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public String getTableName() {
		return tableName;
	}

	public void setTableName(String tableName) {
		this.tableName = tableName;
	}

	public List<Column> getColumns() {
		return columns;
	}

	public void setColumns(List<Column> columns) {
		this.columns = columns;
	}

	public String getServicePackage() {
		return servicePackage;
	}

	public void setServicePackage(String servicePackage) {
		this.servicePackage = servicePackage;
	}

	public String getActionPackage() {
		return actionPackage;
	}

	public void setActionPackage(String actionPackage) {
		this.actionPackage = actionPackage;
	}

	public String getAlias() {
		return alias;
	}

	public void setAlias(String alias) {
		this.alias = alias;
	}

	public String getMapper() {
		return mapper;
	}

	public void setMapper(String mapper) {
		this.mapper = mapper;
	}

	public String getTableNameHump() {
		tableNameHump = "";
		if (StringUtils.isNotBlank(tableName)) {
			tableNameHump = CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, tableName);
		}
		return tableNameHump;
	}

	public String getAliasHump() {

		aliasHump = "";
		if (StringUtils.isNotBlank(alias)) {
			aliasHump = CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, alias);
		}
		return aliasHump;
	}

	public String getModular() {
		return modular;
	}

	public void setModular(String modular) {
		this.modular = modular;
	}

	public List<Column> getForms() {
		return forms;
	}

	public void setForms(List<Column> forms) {
		this.forms = forms;
	}

	public List<Column> getSearchs() {
		return searchs;
	}

	public void setSearchs(List<Column> searchs) {
		this.searchs = searchs;
	}

	public String getDaoPackage() {
		return daoPackage;
	}

	public void setDaoPackage(String daoPackage) {
		this.daoPackage = daoPackage;
	}

	public String getRootRouter() {
		return rootRouter;
	}

	public void setRootRouter(String rootRouter) {
		this.rootRouter = rootRouter;
	}

	public String getPermPrefix() {
		return permPrefix;
	}

	public void setPermPrefix(String permPrefix) {
		this.permPrefix = permPrefix;
	}

	public String getMenuName() {
		return menuName;
	}

	public void setMenuName(String menuName) {
		this.menuName = menuName;
	}

	public List<String> getTpls() {
		return tpls;
	}

	public void setTpls(List<String> tpls) {
		this.tpls = tpls;
	}

	public static void main(String[] args) {

	}

	public List<Column> getTables() {
		return tables;
	}

	public void setTables(List<Column> tables) {
		this.tables = tables;
	}

	public String getToolsPackage() {
		return toolsPackage;
	}

	public void setToolsPackage(String toolsPackage) {
		this.toolsPackage = toolsPackage;
	}

	public String getQueryPackage() {
		return queryPackage;
	}

	public void setQueryPackage(String queryPackage) {
		this.queryPackage = queryPackage;
	}

	public String getQueryModel() {
		return queryModel;
	}

	public void setQueryModel(String queryModel) {
		this.queryModel = queryModel;
	}
}
